Generally, methods of managing Wi-Fi networks (of large, intermediate or small sizes) may include provisioning and configuring the networks, monitoring the health of the networks in real-time, and analyzing network data (which can be large amounts of data requiring complex processing and lots of processor time) to provide network health indicators. Current solutions for network monitoring are typically divided up into local and cloud-based (or remote) control systems and methods. A locally controlled method/system may include a local controller (e.g., physical hardware) and/or software installed on a local PC/server. The system manager can then use the local system from within the security of the existing network, e.g., behind the firewall, to manage the network; because this is done without leaving the firewall it is very secure, however, the intensive processing required may limit the amount of analysis and the sizes of the networks that can be monitored in this manner. In short, local controllers are typically inside firewalls and hence are good at real time monitoring, but are limited by available space and computing capacity and hence cap the number of devices that can be monitored by one instance. Such local systems/methods do not provide a holistic view of the network and are also are not suitable for big-data analysis of network data to provide insights because of computational and storage restrictions.
In contrast, cloud-based (remote) methods/systems typically use a cloud-based controller in which all network data is sent to a cloud (remote server) for monitoring/alerts. Because of the access to large processors and memory, such cloud-based/remote systems and methods are very good at handling large amounts of data (large networks) and can provide a very high level of analysis, data manipulation and data storage. Such cloud controllers are good at passive analysis of large data sets, however they may suffer from network latency, and the need to send frequent data for real-time alerts. Typically remote/cloud-based network controllers and monitors may need a device to push the data (that is generally inside one or more firewalls) or they must maintain expensive (and potentially risky) open socket connections. Thus, cloud-based controllers may suffer from a real-time versus scale problem, typically because of firewalls.
What is needed is a system that allows the benefits of both local and cloud approaches while avoiding or minimizing the problems addressed above. Specifically, what is needed is a hybrid approach that permits scalable, real-time analysis and processor-intensive analytics behind and maintaining the integrity of the network firewall(s). Described herein are apparatuses and methods that may address these needs.